<?php
// Standard-Modul: home.php
$f = "home";
// Falls mit GET eine Variable "file"
// uebergeben wurde, pruefe, ob diese
// Datei existiert und setze sie als
// aktuelle Datei
if(gpcGet("mod","",2) && file_exists($modsdir.gpcGet("mod"))) {
  $f = gpcGet("mod");
}

// Array zum Speichern der Modulinformationen (wie z.B. Name, Version, Author, ...;
// fuer genauere Angaben bitte die Variable $backend_information_i ansehen.)
$backend_information_mods = array();
// Definiert moegliche Informationsvariablen
/*******************************************************************************
* $mod_name  || Name des Moduls (z.B. Home, Media, ...)
* $mod_vers  || Version des Moduls (z.B. 0.4.1 beta, 0.1 alpha 3, ...)
* $mod_buil  || Built des Moduls (dient zum besseren Unterscheiden
*            || unterschiedlicher Versionen; z.B. 6721, 4557, 2412, ..)
* $mod_date  || Datum, an dem diese Version des Moduls erschienen ist,
*            || in der Form, die die Funktion time() zurueckgibt
* $mod_autn  || Name des Authors (z.B. Markus Gutbrod)
* $mod_autm  || E-Mail-Adresse des Authors (z.B.
*            || cmreams.gutbrod.markus@googlemail.com)
* $mod_autu  || Homepage des Authors (z.B. http://www.cmbasic.de/)
* $mod_desc  || Beschreibung des Moduls
*******************************************************************************/
$backend_information_i = array("name", "vers", "buil", "date", "autn", "autm", "autu", "desc");

// Funktion zum Hinzuf&uuml;gen eines Shortcuts im Home-modul
$home_sc = array(array(), array(), array(), array());
function addShortcut($name, $link, $title, $image, $priority=3)
{
  global $home_sc;
  $home_sc[$priority][] = "<div style=\"float: left;\"><div class=\"icon\"><a href=\"".$link."\" title=\"".$name." :: ".$title."\" class=\"tooltip\">
<img border=\"0\" alt=\"".$title."\" src=\"".$image."\"/>
<span>".$name."</span>
</a></div></div>";
}

// Durchlaufe alle Dateien im Verzeichnis von $modsdir (standard: mods/)
foreach(createFileList($modsdir, array("index.html")) as $fi) {

  // Standard: nicht aktiviert und nicht ausfuehren
  $activated = false;
  $execute = false;
  
  // Wenn die Datei mit GET['file'] uebereinstimmt,
  // dann soll die Datei ausgefuehrt werden
  if($f==stripExt($fi)) {
    $execute = true;
  }
  
  // Wenn vor dem nicht Modulnamen "na_" steht, dann
  if(substr($fi, 0, 3)!="na_") {  
    // aktiviere das Modul.
    $activated = true;    
  } else {
    // Andernfalls sorge dafuer, dass es nicht
    // ausgefuehrt wird
    $execute = false;
  }
  
  // Speichere den Dateinamen des Moduls in der V
  // Variable $thisfilename
  $thisfilename = $fi;
  
  // Includiere die (Modul-)Datei
  include_once($modsdir.$fi);
  
  // Hole Modulinformationen (siehe die oben genannten
  // Variablen $backend_information_mods und 
  // $backend_information_i)
  $backend_information_a = array($thisfilename);
  foreach($backend_information_i as $i) {
    $i = "mod_".$i;
    if(!isset($$i)) {
      $$i = "";
    }
    $backend_information_a[] = $$i;
  }
  $backend_information_mods[] = $backend_information_a;
}

// Speichere das Menue in der globalen Variable $menu
function MenuOutput($m)
{
  // Variable $menu in dieser Funktion verfuegbar machen
  global $menu;
  
  // Starte Listenausgabe
  $menu .= "<ul>\n";
  
  // Ausgabe des Menues
  foreach($m as $n) {    
    // Starte Ausgabe eines Listenitems
    $menu .= "<li><a href=\"".$n[2]/* Link */."\" title=\"".$n[0]/* Text */." :: ".$n[1]/* Titel */."\" class=\"tooltip\">".$n[0]."</a>\n";

    // Falls Untereintraege vorhanden sind, starte diese Auszugeben
    if(isset($n[SUBITEMS]) && count($n[SUBITEMS])>1) {
      MenuOutput($n[SUBITEMS]);
    }
    
    // Beende Listenitem
    $menu .= "</li>\n";
  }
  
  // Beende die Liste
  $menu .= "</ul>\n";
}

// Starte Menueausgabe
MenuOutput($categories);
?>